package com.ruihang.generalibrary.ui.util;

/**
 * Created by Administrator on 2017/2/6.
 */

public interface IProgressShowing {
    /**
     * 直接在activity中显示
     */
    int LEVEL_ACTIVITY = -13;
    /**
     * 在fragment中显示
     */
    int LEVEL_FRAGMENT = -12;
    /**
     * 在父节点显示
     */
    int LEVEL_PARENT = -11;
    /**
     * 在自己的范围显示
     */
    int LEVEL_SELF = -10;

    /**
     * 显示progress，根节点为activity
     *
     * @param level   级别，主要用于判断显示的位置(局部，fragment，父fragment，activity等)
     * @param pNumber 当level为{@code LEVEL_PARENT}时，有用
     * @return 是否成功，如果为true，则不再向下层传递
     */
    boolean showProgress(int level, int pNumber);

    /**
     * progress是否正在显示
     *
     * @param level   级别，主要用于判断显示的位置(局部，fragment，父fragment，activity等)
     * @param pNumber 当level为{@code LEVEL_PARENT}时，有用
     * @return 是否正在显示progress
     */
    boolean isProgressShowing(int level, int pNumber);

    boolean closeProgress(int level, int pNumber);
}
